Network schedulers operate on forwarding elements to manage the sequence in which packets are released from a queue. Typically, a forwarding element (switch, router, etc.) will have multiple queues on the receive and/or send sides, with each queue having one or more data flows assigned. The scheduler is responsible for ordering the release of packets from these different queues, often using predefined algorithms. However, as network conditions may change, it would be desirable to be able to modify the scheduler operation on the fly, without requiring control plane intervention to do so.